package io;

import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) {
        // 创建File对象（指向一个文件或目录）
        File file = new File("demo.txt");
        File dir = new File("testDir");

        try {
            // 1. 文件操作
            if (!file.exists()) {
                boolean created = file.createNewFile(); // 创建新文件
                System.out.println("文件创建成功？" + created);
            }

            // 获取文件信息
            System.out.println("文件名：" + file.getName());
            System.out.println("绝对路径：" + file.getAbsolutePath());
            System.out.println("文件大小（字节）：" + file.length());
            System.out.println("是否为文件：" + file.isFile());
            System.out.println("是否可读：" + file.canRead());

            // 2. 目录操作
            if (!dir.exists()) {
                boolean dirCreated = dir.mkdir(); // 创建单级目录
                // dir.mkdirs(); // 创建多级目录
                System.out.println("目录创建成功？" + dirCreated);
            }

            // 列出目录内容
            File parentDir = new File(".");
            String[] files = parentDir.list();
            if (files != null) {
                System.out.println("\n当前目录内容：");
                for (String f : files) {
                    System.out.println(f);
                }
            }

            // 删除文件（程序结束前执行）
            // file.delete();
            // dir.delete();

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
